home *** CD-ROM | disk | FTP | other *** search
/ Aminet 22 / Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso / Aminet / dev / misc / gms_e.lha / GMSDev / Source / E / Screens / HiResScreen.e < prev    next >
Text File  |  1997-09-15  |  2KB  |  59 lines

  1. /* HiRes Picture Display
  2. ** ---------------------
  3. ** Opens a screen of 640 pixels width in HIRES mode.  You can even try
  4. ** SuperHiRes (SHIRES) if you change the appropriate flag in the GameScreen
  5. ** structure.
  6. */
  7.  
  8. MODULE 'dpkernel','gms/dpkernel','graphics/pictures','files/files'
  9. MODULE 'screens','system/register','system/modules','graphics/screens'
  10.  
  11. PROC main()
  12.   DEF screen:PTR TO screen, pic:PTR TO picture
  13.   DEF picfile:filename, scrmodule:PTR TO module
  14.  
  15.   picfile := [ ID_FILENAME, 'GMS:demos/data/PIC.Pic640x256']:filename
  16.  
  17.   IF dpkbase := OpenLibrary('GMS:libs/dpkernel.library',0)
  18.      SetUserPrefs(0)
  19.  
  20.    IF (scrmodule := Init([TAGS_MODULE,NIL,
  21.        MODA_NUMBER,    MOD_SCREENS,
  22.        MODA_TABLETYPE, JMP_AMIGAE,
  23.        TAGEND], NIL))
  24.  
  25.     scrbase := scrmodule.modbase
  26.  
  27.      IF (screen := Init([TAGS_SCREEN,0,
  28.           GSA_SCRWIDTH,  640,
  29.           GSA_SCRHEIGHT, 256,
  30.           GSA_PLANES,    4,
  31.           GSA_SCRMODE,   HIRES,
  32.           TAGEND],NIL))
  33.  
  34.         IF (pic := Init([TAGS_PICTURE,0,
  35.            PCA_DATA,    screen.memptr1,
  36.            PCA_WIDTH,   640,
  37.            PCA_HEIGHT,  256,
  38.            PCA_PLANES,  4,
  39.            PCA_SCRMODE, screen.scrmode,
  40.            PCA_SCRTYPE, screen.scrtype,
  41.            PCA_OPTIONS, GETPALETTE,
  42.            PCA_FILE,    picfile,
  43.            TAGEND],NIL))
  44.  
  45.            screen.palette := pic.palette
  46.            UpdatePalette(screen)
  47.            Display(screen)
  48.            WaitLMB()
  49.         Free(pic)
  50.         ENDIF
  51.      Free(screen)
  52.      ENDIF
  53.    Free(scrmodule)
  54.    ENDIF
  55.   CloseDPK()
  56.   ENDIF
  57. ENDPROC
  58.  
  59.